package com.tengfei.main.question.domain.bo;


import com.tengfei.common.core.validate.AddGroup;
import com.tengfei.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 客观题库业务对象 qb_objective
 *
 * @author tengfei
 * @date 2022-07-28
 */

@Data
@ApiModel("客观题库业务对象")
public class ObjectiveBo extends QuBaseEntityBo{

    /**
     * 客观题id
     */
    @ApiModelProperty(value = "客观题id")
    @NotNull(message = "客观题id不能为空", groups = { EditGroup.class })
    private Long objId;


    /**
     * 客观题内容
     */
    @ApiModelProperty(value = "客观题内容", required = true)
    @NotBlank(message = "客观题内容不能为空", groups = { AddGroup.class, EditGroup.class })
    private String objContent;

    /**
     * 客观题类型
     */
    @ApiModelProperty(value = "客观题类型", required = true)
    @NotNull(message = "客观题类型不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer objType;

    /**
     * 难度等级
     */
    @ApiModelProperty(value = "难度等级")
    @NotNull(message = "难度等级不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer objGrand;

    /**
     * 知识点
     */
    @ApiModelProperty(value = "知识点")
    @NotBlank(message = "知识点不能为空", groups = { AddGroup.class, EditGroup.class })
    private String objTag;

    /**
     * 选项一
     */
    @ApiModelProperty(value = "选项一", required = true)
    @NotBlank(message = "选项一不能为空", groups = { AddGroup.class, EditGroup.class })
    private String objOne;

    /**
     * 选项二
     */
    @ApiModelProperty(value = "选项二", required = true)
    @NotBlank(message = "选项二不能为空", groups = { AddGroup.class, EditGroup.class })
    private String objTwo;

    /**
     * 选项三
     */
    @ApiModelProperty(value = "选项三")
    private String objThree;

    /**
     * 选项四
     */
    @ApiModelProperty(value = "选项四")
    private String objFour;

    /**
     * 题干附件
     */
    @ApiModelProperty(value = "题干附件(只包含图片附件id,通过id查询附件信息,多个id用逗号分隔)")
    private String objStemEnclosure;

    /**
     * 答案序号
     */
    @ApiModelProperty(value = "答案(多个答案用$分隔)", required = true)
    @NotBlank(message = "答案不能为空", groups = { AddGroup.class, EditGroup.class })
    private String objAnswer;

    /**
     * 题目解析
     */
    @ApiModelProperty(value = "题目解析")
    private String objAnswerContent;

    /**
     * 答案附件
     */
    @ApiModelProperty(value = "答案附件(只包含非视频附件id,通过id查询附件信息,多个id用逗号分隔)")
    private String objAnswerEnclosure;


}
